Servo ansteuern

Inhaltsverzeichnis

Für dieses Projekt benötigst du

Wie funktioniert ein Servomotor?

Ein Servomotor ist ein Elektromotor, der über einen Sensor die aktuelle Position bestimmen und zielgenau anfahren kann. Der hier verwendete Sensormotor kann in 1-Grad-Schritten alle Positionen zwischen 0 und 180 Grad ansteuern.

Einen Servo Motor mit einem Mikrocontroller ansteuern

Beispiel: TowerPro SG90 am Funduino UNO R3 Mikrocontrolller

Aufgabe: Ein Servomotor soll von einem Mikrocontroller angesteuert werden. Der Servo soll dazu in diesem Beispiel vier verschiedene Positionen ansteuern und zwischen den Positionen eine kurze Zeit warten.

Schaltpläne

Der Programmcode

Arduino UNO

// die Bibliothek Servo.h wird eingebunden, sie steuert den Motor

#include „Servo.h“  

// der Servomotor erhält den Namen Servomotor

Servo Servomotor;

void setup()

{

  // dem Servomotor wird der Pin 8 zugeordnet

  Servomotor.attach(8);  

}

void loop()

{

  // der write-Befehl steuert den Servomotor

  // Zwischen den einzelnen Positionen gibt es eine Pause

  // Position 1 ansteuern mit dem Winkel 0°

  Servomotor.write(0);  // Position 1 ansteuern mit dem Winkel 0°

  // 3 Sekunden Pause

  delay(3000);  

  // Position 2 mit dem Winkel 90° ansteuern

  Servomotor.write(90);  

  // 3 Sekunden Pause

  delay(3000);  

  // Position 3 mit dem Winkel 180° ansteuern

  Servomotor.write(180);

  // 3 Sekunden Pause

  delay(3000);

  // Position 4 mit dem Winkel 20° ansteuern

  Servomotor.write(20);  

  // 3 Sekunden Pause

  delay(3000);  

}

Wemos D1

// die Bibliothek Servo.h wird eingebunden, sie steuert den Motor

#include „Servo.h“  

// der Servomotor erhält den Namen Servomotor

Servo Servomotor;

void setup()

{

  // dem Servomotor wird der Pin D1 zugeordnet

  Servomotor.attach(D1);  

}

void loop()

{

  // der write-Befehl steuert den Servomotor

  // Zwischen den einzelnen Positionen gibt es eine Pause

  // Position 1 ansteuern mit dem Winkel 0°

  Servomotor.write(0);  // Position 1 ansteuern mit dem Winkel 0°

  // 3 Sekunden Pause

  delay(3000);  

  // Position 2 mit dem Winkel 90° ansteuern

  Servomotor.write(90);  

  // 3 Sekunden Pause

  delay(3000);  

  // Position 3 mit dem Winkel 180° ansteuern

  Servomotor.write(180);

  // 3 Sekunden Pause

  delay(3000);

  // Position 4 mit dem Winkel 20° ansteuern

  Servomotor.write(20);  

  // 3 Sekunden Pause

  delay(3000);  

}

NodeMCU

// die Bibliothek Servo.h wird eingebunden, sie steuert den Motor

#include „Servo.h“  

// der Servomotor erhält den Namen Servomotor

Servo Servomotor;

void setup()

{

  // dem Servomotor wird der Pin D1 zugeordnet

  Servomotor.attach(D1);  

}

void loop()

{

  // der write-Befehl steuert den Servomotor

  // Zwischen den einzelnen Positionen gibt es eine Pause

  // Position 1 ansteuern mit dem Winkel 0°

  Servomotor.write(0);  // Position 1 ansteuern mit dem Winkel 0°

  // 3 Sekunden Pause

  delay(3000);  

  // Position 2 mit dem Winkel 90° ansteuern

  Servomotor.write(90);  

  // 3 Sekunden Pause

  delay(3000);  

  // Position 3 mit dem Winkel 180° ansteuern

  Servomotor.write(180);

  // 3 Sekunden Pause

  delay(3000);

  // Position 4 mit dem Winkel 20° ansteuern

  Servomotor.write(20);  

  // 3 Sekunden Pause

  delay(3000);  

}

Funduino - Dein Onlineshop für Mikroelektronik

  • Dauerhaft bis zu 10 % Rabatt für Schüler, Studenten und Lehrkräfte
  • Mehr als 4.000 Artikel sofort verfügbar!
  • Mehr als 10 Jahre Erfahrung mit Arduino, 3D-Druck und co.
SALE
Benötigst du Unterstützung bei deinem Projekt?

Alle Modelle der hier gezeigten Modelle sind hier zum Download  in einer kompakten Zip Datei verfügbar.